package xijia.plus.docs.manage.all.service;

import com.baomidou.mybatisplus.extension.service.IService;
import io.github.wslxm.springbootplus2.core.base.model.BasePage;
import io.github.wslxm.springbootplus2.manage.sys.model.query.ConfigQuery;
import xijia.plus.docs.manage.all.model.dto.DocConfigDTO;
import xijia.plus.docs.manage.all.model.entity.DocConfig;
import xijia.plus.docs.manage.all.model.vo.DocConfigVO;

import java.util.Set;

/**
 * 系统全局配置 Service
 *
 * <p>
 * ::本代码由[兮家小二]提供的代码生成器生成,如有问题,请手动修改 ::作者CSDN:https://blog.csdn.net/qq_41463655
 * </p>
 * @author ws
 * @email 1720696548@qq.com
 * @date 2023-04-23 11:02:52
 */
public interface DocConfigService extends IService<DocConfig> {


    /**
     * 列表查询
     *
     * @param query query
     * @return com.baomidou.mybatisplus.core.metadata.BasePage<io.github.wslxm.springbootplus2.manage.xj.model.vo.ConfigVO>
     * @version 1.0.0
     */
    BasePage<DocConfigVO> findPage(String tenantName, ConfigQuery query);


    /**
     * id查询
     * @author wangsong
     * @param id
     * @date 2022/5/15 0015 11:33
     * @return io.github.wslxm.springbootplus2.manage.xj.model.vo.ConfigVO
     * @version 1.0.0
     */
    public DocConfigVO findId(String tenantName, String id);


    /**
     * 添加
     *
     * @param dto dto
     * @return java.lang.String
     * @version 1.0.0
     */
    String insert(String tenantName, DocConfigDTO dto);

    /**
     * 编辑
     *
     * @param id  id
     * @param dto dto
     * @return boolean
     * @version 1.0.0
     */
    boolean upd(String tenantName, String id, DocConfigDTO dto);


    /**
     * 删除
     * @param id
     * @return
     */
    public boolean del(String tenantName, String id);

    /**
     * code 查询
     *
     * @param code code
     * @return io.github.wslxm.springbootplus2.manage.xj.model.vo.ConfigVO
     * @version 1.0.0
     */
    DocConfigVO findByCode(String tenantName, String code);


    /**
     * 获得租户消息
     *
     */
    Set<String> getTenantNames();
}

